Long-term Refactoring
#WIP
https://martinfowler.com/articles/workflowsOfRefactoring/#long-term
1回の開発では出来ないような、大規模なモジュールの置き換えや、データベースの永続化フレームワークの変更、依存関係の修正など。
Branch By Abstraction
Martin Fowlerによるまとめ
https://martinfowler.com/bliki/BranchByAbstraction.html
http://continuousdelivery.com/2011/05/make-large-scale-changes-incrementally-with-branch-by-abstraction/
SCMのブランチ戦略から考えるBranch By Abstraction
https://paulhammant.com/blog/branch_by_abstraction.html
Monolith to Microservicesの書籍にも載っている
インタフェース化されてないものは、まずインタフェース作って、それを呼ぶように変えるので、リファクタリングではなくなる。